import { createNotification } from '@/utils/tool'
console.log('service worker loaded')
// getCurrentTab()
// createMenus()

// // 获取当前选项卡ID
// async function getCurrentTab() {
//   let queryOptions = { active: true, lastFocusedWindow: true };
//   // `tab` will either be a `tabs.Tab` instance or `undefined`.
//   let [tab] = await chrome.tabs.query(queryOptions);
//   console.log(tab)
//   return tab
// }

// // 创建存储数据菜单
// function createMenus() {
//   chrome.contextMenus.create({
//     id: 'setStorage',
//     type: 'normal',
//     title: 'setStorage',
//     // MV3取消该方法，改用chrome.contextMenus.onClicked事件监听
//     // onclick: (info: any, tab: any) => {
//     //   console.log(info, tab, 'tab')
//     //   // chrome.tabs.sendMessage(tab.id as number, JSON.stringify(info), (response) => {
//     //   //   console.log(response,'response')
//     //   // })
//     //   // }
//     // },
//   },() => {
//     // 创建菜单完成后的回调
//       console.log('setStorage菜单创建')
//     }
//   )
//   // 创建获取数据菜单
//   chrome.contextMenus.create({
//     id: 'getStorage',
//     type: 'normal',
//     title:'getStorage'
//   },() => {
//     // 创建菜单完成后的回调
//       console.log('getStorage菜单创建')
//     }
//   )
// }
// // 监听菜单点击事件
// chrome.contextMenus.onClicked.addListener(async(info, tab) => {
//   console.log(info, tab, 'tabId');
//   const storageKeyInfo = await chrome.storage.sync.get(['storageType', 'storageKey'])
// 	if (Object.keys(storageKeyInfo).length <= 0) {
// 		// return message.error('请先通过插件弹出页面设置存储类型和key！')
//     createNotification({title:'storage键值对设置状态',message:'请先通过插件弹出页面设置存储类型和key！'})
//     return
//   } 
//   const storageInfo = await chrome.storage.sync.get([storageKeyInfo.storageKey])
//   // 发送消息
//   chrome.tabs.sendMessage(
//     tab?.id as number,
//     JSON.stringify({
//       menuItemId: info.menuItemId,
//       storageKeyInfo,
//       storageInfo
//     }),
//     (response) => {
//       console.log('background receive response :', response);
//       if (response) {
//         createNotification({title:'存储操作结果',message:(info.menuItemId === 'setStorage'?'设置':'获取') +"storage成功"})
//       } else {
//         createNotification({title:'存储操作结果',message:(info.menuItemId === 'setStorage'?'设置':'获取') +"storage失败"})
//       }
//   })    
// })
// // 监听消息
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
  if (request.type === 'content') {
    createNotification({title:request.title,message:request.message})
  }
})


// chrome.runtime.onInstalled.addListener((reason) => {
//   console.log(reason,'reason');
//   console.log(chrome.runtime.OnInstalledReason.INSTALL,'INSTALL');
//   chrome.tabs.create({
//     url: "onboarding.html"
//   });
//   // if (reason === chrome.runtime.OnInstalledReason.INSTALL) {
//   // }
// });

// 监听popup建立的长连接
// chrome.runtime.onConnect.addListener(port => {
//   port.onMessage.addListener(message => {
//     console.log(message, 'message');
//     // createTab()
//   })
// })
// 创建新标签页
// function createTab() {
//   chrome.tabs.create({
//     url: "src/onboarding/onboarding.html"
//   });
// }
export {}
